package com.zhh.springcloud.config;

import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration  //该注解表明这是配置文件，相当于之前ssm时代的applicationContext.xml
                // 参考： https://blog.csdn.net/loongkingwhat/article/details/105752446
public class ConfigBean {

    //该方法的作用：将RestTemplate加入Spring容器中管理，这样我们在spring中就可以使用Autowired来实现注入
    @Bean  //该注解代替了以前applicationContext.xml文件中的<bean>的配置值
    @LoadBalanced  //让ribbon对restTemplate发送出去的请求进行负载均衡的分发
    public RestTemplate getRestTemplate(){
        return new RestTemplate();  //这种写法有点类似工厂模式
    }

}
